package com.fish.vo;


public class PassportConstant {
	private static PassportConstant instance;
	public static enum PASSCODE_REAPPLY_STATUS {
		/** 重申请码 */
		TRUE("重申请码"),
		/** 未重申请码 */
		FALSE("未重申请码");
		private String cnName;
		PASSCODE_REAPPLY_STATUS(String name){
			this.cnName=name;
		}
		public String getCode(){
			return this.name();
		}
		public String getCnName(){
			return this.cnName;
		}
		public static String getCnName(String code){
			for(PASSCODE_REAPPLY_STATUS item:PASSCODE_REAPPLY_STATUS.values()){
				if(item.getCode().equals(code))
				{
					return item.getCnName();
				}
			}
			return code;
		}
		public String toString(){
			return this.name();
		}
		
	}

	public static enum PASSCODE_HANDL_STATUS {
		/**
		 * 未处理的请求状态
		 */
		NOHANDL("未处理的请求状态"),
		/**
		 * 已经处理的请求状态
		 */
		HANDL("已经处理的请求状态");
		
		private String cnName;
		PASSCODE_HANDL_STATUS(String name){
			this.cnName=name;
		}
		public String getCode(){
			return this.name();
		}
		public String getCnName(){
			return this.cnName;
		}
		public static String getCnName(String code){
			for(PASSCODE_HANDL_STATUS item:PASSCODE_HANDL_STATUS.values()){
				if(item.getCode().equals(code))
				{
					return item.getCnName();
				}
			}
			return code;
		}
		public String toString(){
			return this.name();
		}
	}

	public static enum PASSCODE_TYPE {
		/**
		 * 申请码
		 */
		APPLAYCODE("申请码"),
		/**
		 * 废码
		 */
		DESTROYCODE("废码"),
		/**
		 * 更新内容
		 */
		UPDATECONTENT("更新内容"),
		/**
		 * 回收码
		 */
		USEEDCODE("回收码"),
		/**
		 * 更新订单联系人
		 */
		UPDATECONTACT("更新订单联系人"),
		/**
		 * 重发短信
		 */
		RESEND("重发短信"),
		/**
		 * 其它类型
		 */
		OTHER("其它类型");
		
		private String cnName;
		PASSCODE_TYPE(String name){
			this.cnName=name;
		}
		public String getCode(){
			return this.name();
		}
		public String getCnName(){
			return this.cnName;
		}
		public static String getCnName(String code){
			for(PASSCODE_TYPE item:PASSCODE_TYPE.values()){
				if(item.getCode().equals(code))
				{
					return item.getCnName();
				}
			}
			return code;
		}
		public String toString(){
			return this.name();
		}
	}
	
	public static enum PASSCODE_STATUS {
		SUCCESS("申码成功"),
		FAILED("申码失败"),
		DESTROYED("废码成功"),
		TEMP_FAILED("临时申码失败"),
		NOHANDL("申码未处理");
		
		private String cnName;
		PASSCODE_STATUS(String name){
			this.cnName=name;
		}
		public String getCode(){
			return this.name();
		}
		public String getCnName(){
			return this.cnName;
		}
		public static String getCnName(String code){
			for(PASSCODE_STATUS item:PASSCODE_STATUS.values()){
				if(item.getCode().equals(code))
				{
					return item.getCnName();
				}
			}
			return code;
		}
		public String toString(){
			return this.name();
		}
	}

	public static enum PASSCODE_APPLY_STATUS {
		/** 已经申请码状态 */
		APPLIED("已经申请码状态"),
		/** 申请码成功状态 */
		SUCCESS("申请码成功状态"),
		/** 申请失败 */
		FAILED("申请失败");
		
		private String cnName;
		PASSCODE_APPLY_STATUS(String name){
			this.cnName=name;
		}
		public String getCode(){
			return this.name();
		}
		public String getCnName(){
			return this.cnName;
		}
		public static String getCnName(String code){
			for(PASSCODE_APPLY_STATUS item:PASSCODE_APPLY_STATUS.values()){
				if(item.getCode().equals(code))
				{
					return item.getCnName();
				}
			}
			return code;
		}
		public String toString(){
			return this.name();
		}
	}

	public static enum PASSCODE_USE_STATUS {
		/** 未被使用 */
		UNUSED("未被使用"),
		/** 已使用 */
		USED("已使用"),
		/** 被废弃 */
		DESTROYED("被废弃");
		
		private String cnName;
		PASSCODE_USE_STATUS(String name){
			this.cnName=name;
		}
		public String getCode(){
			return this.name();
		}
		public String getCnName(){
			return this.cnName;
		}
		public static String getCnName(String code){
			for(PASSCODE_USE_STATUS item:PASSCODE_USE_STATUS.values()){
				if(item.getCode().equals(code))
				{
					return item.getCnName();
				}
			}
			return code;
		}
		public String toString(){
			return this.name();
		}
	}
	
	

	public static enum PASSCODE_ERROR {
		/** 申请码 */
		APPLY,
		/** 废码失败 */
		DESTROY,
		/** 重发短信失败*/
		RESEND,
		/** 申请失败 */
		USED;
	}
	public static enum PASSCODE_DEVICE_TYPE {
		/** 新设备 */
		NEW_DEVICE,
		/** 老设备 */
		OLD_DEVICE
	}
	public static enum PASS_PROVIDER_TYPE {
		/**恐龙园 */
		DINOSAURTOWN,
		/**长隆*/
		CHIMELONG,
		/**永利国旅*/
		YONGLIGUOLV,
		/**华强方特*/
		FANGTE,
		/**瘦西湖*/
		SHOUXIHU,
		/**e游*/
		YIYOU
	}
	
	public static enum PASSCODE_SMS_SENDER {
		/**由驴妈妈发送短信*/
		LVMAMA,
		/**由合作伙伴发送短信*/
		PARTNER
	}
	
	public synchronized static PassportConstant getInstance() {
		if (instance == null) {
			instance = new PassportConstant();
		}
		return instance;
	}

	public static String getTempDir() {
		return System.getProperty("java.io.tmpdir");
	}
}
